package main

import "fmt"

type Base struct {
    Name string
}

func (base *Base) Foo() {
    fmt.Println("Base Foo");
}

func (base *Base) Bar() {
    fmt.Println("Base Bar");
}

type Foo struct {
    Base
}

func (foo *Foo) Foo() {
    fmt.Println("Foo Foo");
}

func main() {
    var f Foo
    f.Foo()
    f.Bar()
}
